The present invention relates to a technique employed by a computer of a system including a plurality of computers connected by a network (hereafter, referred to as “network system”) for making access via the network to data stored in a storage device connected to another computer.
As a technique for allowing a client to access a file managed by a file server via a network, there is a method called NFS (Network File System). Incidentally, in the following description, a computer that requests access (read, write) to a file stored in a storage device of another computer will be referred to as “client computer” (or simply as “client”), and a computer that accesses the file of its storage device in response to the request by the client and sends the result of access (read data, whether data write was conducted successfully or not, etc.) back to the client will be referred to as “file server computer” (or simply as “file server” or “server”). A “file” means a group of data used by an application program executed by a computer and user.
In NFS, a client requests access to a server by sending an RPC (Remote Procedure Call) request message packet to the server. The server responds to the request of the client by returning an RPC reply message packet.
Since the protocol design of NFS is basically founded on a “stateless” principle (holding no status information in the server or client), the client does not temporarily store (cache) the file read out from the server in its storage device. Therefore, communication between the client and the server necessarily takes place when the client makes access to a file managed by the server.
Meanwhile, the so-called DFS (Distributed File System) and proxy servers are known as techniques for caching the files (managed by the file server) in the client itself or in a server in the proximity of the client.
In DFS, the client caches data of files read out from the server in a storage device of the client itself.
In contrast, a proxy server is placed between the client and the server (mostly on a network including the client). For requesting access to a file of the server, the client sends an access request to the proxy server. The proxy server reads the file from the server on behalf of the client and sends the file to the client, while caching the acquired file in itself.
Thereafter, when an access request for the same file is sent from the client to the proxy server, the proxy server sends the cached file to the client, without making access to the server.
There has been disclosed a system comprising a main file server and an auxiliary file server in JP-A-6-243074 in which when the main file server ran short of free space or storage capacity, files stored in the main file server are transferred to the auxiliary file server (migration of files). When an access request for the transferred file is made by a client, the main file server requests the auxiliary file server to return the requested file to the main file server.